//单机某个笔记本显示笔记列表
function loadNotes(){ //给现有或未来出现的元素绑定事件,动态绑定技术
	               $("#pc_part_2").show();//全部笔记列表
	               $("#pc_part_6").hide();//搜索结果列表
	               $("#pc_part_3").show();//编辑区
	               $("#pc_part_5").hide();//预览区
	               $("#pc_part_4").hide();//回收站笔记列表
            	   //1.获取bookId
            	   var bookId = $(this).data("bookId");
            	   $("#book_list li a").removeClass("checked");
                   $(this).find("a").addClass("checked");
            	   //2.发送请求
            	   $.ajax({
            		   url:"http://localhost:8080/cloud_note/note/loadnotes.do",
            		   type:"post",
            		   data:{"bookId":bookId},
            		   dataType:"json",
            		   success:function(result){
            			   if(result.status == 0){
            				  var notes = result.data;	  
            				  $("#note_list").empty();//先清除原有的笔记列表,否则会累加
            				  for(var i=0;i<notes.length;i++){
            					  var noteId    = notes[i].cn_note_id;      //获取笔记id
            					  var noteTitle = notes[i].cn_note_title;   //获取笔记标题
            					  //拼成一个笔记li
                				  var s_li='<li class="online">'
                					  s_li+=    '<a  class="">'
                					  s_li+=		'<i class="fa fa-file-text-o" title="online" rel="tooltip-bottom"></i>'
                						             +noteTitle+
                						             '<button type="button" class="btn btn-default btn-xs btn_position btn_slide_down"><i class="fa fa-chevron-down"></i></button>'
                					  s_li+=    '</a>'
                					  s_li+=    '<div class="note_menu" tabindex="-1">'
                					  s_li+=        '<dl>'
                					  s_li+=			'<dt><button type="button" class="btn btn-default btn-xs btn_move" title="移动至..."><i class="fa fa-random"></i></button></dt>'
                					  s_li+=			'<dt><button type="button" class="btn btn-default btn-xs btn_share" title="分享"><i class="fa fa-sitemap"></i></button></dt>'
                					  s_li+=			'<dt><button type="button" class="btn btn-default btn-xs btn_delete" title="删除"><i class="fa fa-times"></i></button></dt>'
                					  s_li+=		'</dl>'
                					  s_li+=	'</div>'
                					  s_li+='</li>'
                                   var $li = $(s_li);
                				   $li.data("noteId",noteId);
                				   $("#note_list").append($li);//将笔记li添加到笔记ul中
            				  }
            			   }
            		   }
            	   });
}
//弹出添加笔记对话框
function showAddNoteWindow(){
	   $("#can").load("alert/alert_note.html");//显示对话框
	   $(".opacity_bg").show();
}
//确认添加笔记
function sureAddNote(){
	   //1.获取要提交的信息：笔记本Id,笔记Id,用户Id(前面已经获取了useId)
	   var noteTitle = $("#input_note").val().trim(); //获取笔记的标题
	   var $notebook = $("#book_list a.checked").parent(); //笔记本列表中被选中的a的父元素———li
	   var bookId = $notebook.data("bookId");//获取笔记本的Id
	   //2.检测格式
	   if(bookId == undefined){  //防止用户未选择笔记本!
		   alert("请选择笔记本");
		   return;
	   }   
	   //3.发送ajax请求(a,b,c,d,e)
	   $.ajax({
		   url:"http://localhost:8080/cloud_note/note/add.do",
		   type:"post",
		   data:{"noteTitle":noteTitle,"bookId":bookId,"userId":userId},
		   dataType:"json",
		   success:function(result){
			   if(result.status == 0){
				   closeWindow();
				   //a.从result中取值
				   var noteId = result.data;
				   //b.拼一个字符串s_li,里面动态的信息拼接上去。
				   var s_li='<li class="online">'
					  s_li+=    '<a  class="">'
					  s_li+=		'<i class="fa fa-file-text-o" title="online" rel="tooltip-bottom"></i> '+noteTitle+'<button type="button" class="btn btn-default btn-xs btn_position btn_slide_down"><i class="fa fa-chevron-down"></i></button>'
					  s_li+=    '</a>'
					  s_li+=    '<div class="note_menu" tabindex="-1">'
					  s_li+=        '<dl>'
					  s_li+=			'<dt><button type="button" class="btn btn-default btn-xs btn_move" title="移动至..."><i class="fa fa-random"></i></button></dt>'
					  s_li+=			'<dt><button type="button" class="btn btn-default btn-xs btn_share" title="分享"><i class="fa fa-sitemap"></i></button></dt>'
					  s_li+=			'<dt><button type="button" class="btn btn-default btn-xs btn_delete" title="删除"><i class="fa fa-times"></i></button></dt>'
					  s_li+=		'</dl>'
					  s_li+=	'</div>'
					  s_li+='</li>'
					 //c.将字符串li转化成jQuery元素$li。
					 var $li = $(s_li);
				     //d.新添加的$li元素往往要绑定Id值以便于后续操作。
				     $li.data("noteId",noteId);
				     //e.将$li插入指定的位置。
				     $("#note_list").prepend($li);
			   }
		   },  //注意这个逗号不能丢！
		   error:function(){
			   alert("创建笔记失败！");
		   }
	   });
}
//在编辑区加载某条笔记
function loadNote(){
	   $("#pc_part_5").hide();
	   $("#pc_part_3").show();
	   //设置笔记的选中效果
	   $("#note_list li a").removeClass("checked");
	   $(this).find("a").addClass("checked");//?不行 var noteId=$("#note_list li a.checked").parent().data("noteId");
	   //1.获取信息(笔记本Id)
	   var noteId = $(this).data("noteId");
	   //2.发送ajax请求
	   $.ajax({
	     url:"http://localhost:8080/cloud_note/note/loadnote.do",
	     type:"post",
	     data:{"noteId":noteId},
	     dataType:"json",
	     success:function(result){
		    if(result.status == 0){
		    	var note = result.data;
		    	var noteTitle = note.cn_note_title;
		    	var noteBody = note.cn_note_body;		    	
		    	$("#input_note_title").val(noteTitle);//设置编辑区标题	    	
		    	um.setContent(noteBody); //设置编辑区内容
		    }
	     },
	     error:function(){
	    	 alert("加载笔记失败");
	     }
	  });
}
//保存笔记
function saveNote(){
	   var noteTitle = $("#input_note_title").val().trim();//获取笔记标题
	   var noteBody = um.getContent();//获取笔记内容
	   var $note_li = $("#note_list li a.checked").parent();
	   var noteId = $note_li.data("noteId");
	   $.ajax({
		   url:"http://localhost:8080/cloud_note/note/update.do",
		   type:"post",
		   data:{"noteId":noteId,"noteTitle":noteTitle,"noteBody":noteBody},
		   dataType:"json",
		   success:function(result){
			   if(result.status == 0){
				   alert("保存笔记成功！");
				   var liTitle = $("#note_list a.checked").text().trim();
				   if(liTitle != noteTitle){
					   var s='<i class="fa fa-file-text-o" title="online" rel="tooltip-bottom"></i> '+noteTitle+'<button type="button" class="btn btn-default btn-xs btn_position btn_slide_down"><i class="fa fa-chevron-down"></i></button>';
					   $("#note_list a.checked").html(s);//替换选中的a元素中的内容
				   }
			   }
		   },
		   error:function(){
			   alert("笔记保存失败！");
		   }
	   });
}
//确认将笔记本移入回收站
function recycleNote(){
	   var $li = $("#note_list a.checked").parent();
	   var noteId = $li.data("noteId");
	   $.ajax({
		   url:"http://localhost:8080/cloud_note/note/recycle.do",
		   type:"post",
		   data:{"noteId":noteId},
		   dataType:"json",
		   success:function(result){
			   if(result.status == 0){
				   //a.删除笔记li
				   $li.remove();
				   //b.清除编辑区
				   $("#input_note_title").val("");
				   um.setContent("");
				   //c.提示删除成功
				   alert(result.msg);
				   //window.location.reload();让页面自动刷新也会取得相同的效果，但是需要加载页面，浪费时间与流量。
			   }
		   },
		   error:function(){
			   alert("删除笔记失败!");
		   }
	   });
}
//分享笔记
function shareNote(){
	  var noteId = $(this).parents("li").data("noteId");//不是很明白选中的动心为什么一定是<a/>
	  //var noteId=$("#note_list li a.checked").parents("li").data("noteId");//这种方式也可以，就是稍微麻烦了点。
	  $.ajax({
		  url:"http://localhost:8080/cloud_note/note/share.do",
		  type:"post",
		  data:{"noteId":noteId},
		  dataType:"json",
		  success:function(result){
			 alert(result.msg); 
		  },
		  error:function(){
			 alert("分享笔记失败！");
		  }
	  });
 }
//分享笔记检索
function searchNotes(event){
	   var code = event.keyCode;
	   if(code == 13){
		  $("#share_list").empty();
		  var keyword = $("#search_note").val().trim();
		  $.ajax({
			  url:"http://localhost:8080/cloud_note/note/search.do",
			  type:"post",
			  data:{"keyword":keyword},
			  dataType:"json",
			  success:function(result){
				if(result.status == 0){
				  var notes = result.data;
				  for(var i=0;i<notes.length;i++){
					  var shareTitle = notes[i].cn_share_title;
					  var shareId    = notes[i].cn_share_id;
					  var s_li='<li class="online">'
 					  s_li+=    '<a  class="">'
 					  s_li+=		'<i class="fa fa-file-text-o" title="online" rel="tooltip-bottom"></i> '
 						             +shareTitle+
 						             '<button type="button" class="btn btn-default btn-xs btn_position btn_slide_down"><i class="fa fa-star"></i></button>'
 					  s_li+=    '</a>'
 					  s_li+='</li>'
 				  var $li = $(s_li);
 				  $li.data("shareId",shareId);
 				  $("#share_list").append($li);
				}
			    $("#pc_part_2").hide();//笔记列表隐藏
			    $("#pc_part_4").hide();//回收站笔记列表隐藏
			    $("#pc_part_6").show();//搜索结果列表显示
			    $("#pc_part_3").hide();//编辑区隐藏
			    $("#pc_part_5").show();//预览区显示	
				}
			  }
		  });
	   }
}
//分享笔记检索结果单击预览
function previewShareNotes(){
	   var shareId = $(this).data("shareId");
	   $.ajax({
		   url:"http://localhost:8080/cloud_note/note/loadShare.do",
		   type:"post",
		   data:{"shareId":shareId},
		   dataType:"json",
		   success:function(result){
		     if(result.status == 0){
		       var share = result.data;
		       $("#noput_note_title").html(share.cn_share_title);
		       $("#pc_part_5 p").html(share.cn_share_body);
		     }
		   }
	   });
}
//显示回收站笔记列表
function loadRecycleNotes(){
 $.ajax({
		url:"http://localhost:8080/cloud_note/note/loadDeleteNotes.do",
		type:"post",
		data:{"userId":userId},
		dataType:"json",
		success:function(result){
		  if(result.status == 0){
			  $("#deleteNotes_List").empty();
			  var notes = result.data;
			  for(var i=0;i<notes.length;i++){
				 var noteTitle = notes[i].cn_note_title;
				 var noteId    = notes[i].cn_note_id;
				 var s_li='<li class="disable">';
				     s_li+=		 '<a >';
				     s_li+=		   '<i class="fa fa-file-text-o" title="online" rel="tooltip-bottom"></i>'+noteTitle;
				     s_li+=		   '<button type="button" class="btn btn-default btn-xs btn_position btn_delete"><i class="fa fa-times"></i></button>';
				     s_li+=		   '<button type="button" class="btn btn-default btn-xs btn_position_2 btn_replay"><i class="fa fa-reply"></i></button>';
				     s_li+=		 '</a>';
				     s_li+='</li>';
				 var $li = $(s_li);
				 $li.data("noteId",noteId);//注意：中间的是逗号不是冒号！
			     $("#deleteNotes_List").append($li);
			  }
			  $("#pc_part_4").show();//回收站笔记列表
			  $("#pc_part_2").hide();//全部笔记列表
              $("#pc_part_6").hide();//搜索结果列表
              $("#pc_part_3").show();//编辑区
              $("#pc_part_5").hide();//预览区
		  }
		}
	  });
 }
//弹出恢复笔记本下拉单
function loadSelects(){         	   
	   var noteId = $(this).parents("li").data("noteId");//a.获取选中笔记的noteId
	   $(".opacity_bg").show();//显示背景色
	   $("#can").load("alert/alert_replay.html",function(){//ajax操作01
		   /*在html载入完毕后执行,加载笔记本信息，生成下拉单选择项-------ajax操作02 
		       加载页面的ajax请求与获取笔记本的ajax请求本来是同时执行的，但是后一个请求的结果需要往前一个页面的ul上绑定，
		       所以要是页面还没有加载完毕但是就先绑定的话会存在风险，像此类情况应该保证一个ajax请求的结果回来后再执行另一个请求
		        即使用load的另外一种结构
		   */
		   $("#sureReplay").data("noteId",noteId);//b.将noteId藏至恢复按钮,新的方法！
	 	   $.ajax({                   
	 		  url:"http://localhost:8080/cloud_note/notebook/loadbooks.do",
	 	  	  type:"post",
	 	      data:{"userId":userId},
	 	  	  dataType:"json",
	 	  	  success:function(result){
	 	  		  if(result.status == 0){
	 	  			 var noteBooks = result.data;
	 	  			 for(var i=0;i<noteBooks.length;i++){
	 	  				 var bookId = noteBooks[i].cn_notebook_id;
	 	  				 var bookName = noteBooks[i].cn_notebook_name;
	 	  				 //拼一个option,option里面的value属性可以存储bookId,所以不用将option对象转换成jQuery对象再藏值。
	 	  				 var s_opt='<option value="'+bookId+'">-'+bookName+'-</option>';
	 	  				 $("#replaySelect").append(s_opt);
	 	  			 }
	 	  		  }
	 	  	  }
	 	   });
	   });       	            	   
}
//点击"恢复"按钮恢复笔记
function replayNote(){
	   var noteId = $("#sureReplay").data("noteId");//noteId已经被藏到恢复按钮中
	   var bookId = $("#replaySelect").val();//获取下拉单选中项的val值
	   $.ajax({
		  url:"http://localhost:8080/cloud_note/note/replay.do",
	  	  type:"post",
	      data:{"bookId":bookId,"noteId":noteId},
	  	  dataType:"json",
	  	  success:function(result){
	  		if(result.status == 0){    	  		   
	  		   closeWindow();//关闭对话框       
	  		   /*
	  		      回收站笔记li的删除:就是要根据noteId找到相应的note，可以使用循环来一个一个比较，但是太麻烦，
	  		      还有就是触发回收站按钮单击事件，但是这样的效率相对较低。
	  		      一切的根源都在于一开始的时候将noteId藏在了"恢复"按钮中。
	  		   */
	  		   $("#rollback_button").click(); //刷新回收站列表显示,等价于用户自己点一下
	  		   alert("恢复笔记成功")
	  		}
	  	  }
	   });
}
//彻底删除笔记
function sureDeleteNote(){
	   var noteId=$(this).parents("li").data("noteId");
	   $("#can").load("alert/alert_delete_rollback.html",function(){//使用load("xxx.html",function)的形式，否则后面有绑不上的风险！
		   $("#sure_deleteNote").click(function(){
 		     $.ajax({
 		        url:"http://localhost:8080/cloud_note/note/sureDelete.do",      
 		        Type:"post",
 		        data:{"noteId":noteId},
 		        dataType:"json",
 		        success:function(result){
 		          if(result.status == 0){
 		        	closeWindow();
 		        	$("#rollback_button").click();
 		            alert(result.msg);
 		          }
 		        },
 		        error:function(){
 		        	alert("系统异常，删除失败！");
 		        }
 		     });
		   });
	   });     	   
}